iT邦幫忙

2023 iThome 鐵人賽

DAY 16
1
自我挑戰組

轉職新手學 Django 及 DRF系列 第 16

Day 16 - 做 API 之前先簡單介紹 REST

  • 分享至 

  • xImage
  •  

今天來簡單介紹 REST 架構有什麼要求。

REST 架構

REST 架構有以下規定:

  1. 客戶端-伺服器端:將客戶端(發送請求)與伺服器端(發送回應)分離,且彼此獨立。各自擴展的過程中不會影響到資料交換的品質。

  2. 無狀態性:資料交換的時候不會儲存使用者的狀態,可讓每次呼叫都被獨立看待,上次不會影響到下次。相反的,有狀態如網站登入後會給 session,在一段時間內伺服器都會記錄著使用者登入的狀態。

  3. 快取性:在大型且複雜的 REST API 中可增加快取機制增加效能。

  4. 分層系統:在伺服器端與客戶端之間可以有多個中間伺服器,以平衡負載及增加可延伸性及安全性,請求可能從最終伺服器或中間伺服器發送,客戶端一般不會知道來源。

  5. 統一介面:同一資源可使用不同的 HTTP method,讓 API 易懂且易擴充(如昨天的文章)

REST 介紹大概就到這。而 API 除了 REST 風格,還有 GraphQL, gRPC, kafka 等,沒有一個是完美的,所以要依照需求評估要使用的風格。

結語

REST 的部分就介紹到這邊,接著會介紹 Django REST framework。我們明天見~


上一篇
Day 15 - 接下來用 DRF 做個 API 吧!
下一篇
Day 17 - 安裝所需套件及創建專案
系列文
轉職新手學 Django 及 DRF30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言